package com.arnold.test.transformations

import org.apache.spark.{SparkConf, SparkContext}

/**
  * Created by arnold.zhu on 2017/7/18.
  */
object GroupByKey {

  def main(args: Array[String]): Unit = {
    val conf = new SparkConf().setMaster("local").setAppName("Spark01Learn")
    val sc = new SparkContext(conf)

    val kv1 = sc.parallelize(List(("A", 1), ("B", 2), ("C", 3), ("A", 4), ("B", 5)))

    // 在一个由（K,V）对组成的数据集上调用，返回一个（K，Seq[V])对的数据集 在对大数据进行复杂计算时，reduceByKey优于groupByKey。
    kv1.groupByKey().collect.foreach {
      println(_)
    }
  }

}
